package com.lb.activity.po;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Id;

@ApiModel(value = "请假")
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class LeaveBill implements Serializable {
    private static final long serialVersionUID = -4040026512577552828L;
    /**
     *
     */
    @Id
    @ApiModelProperty(value = "id")
    private Long leaveId;

    /**
     * 申请人
     */
    @ApiModelProperty(value = "申请人")
    private String proposer;

    /**
     * 申请时间
     */
    @ApiModelProperty(value = "申请时间")
    private Date applyDate;

    /**
     * 部门ID
     */
    @ApiModelProperty(value = "部门ID")
    private Long deptId;

    /**
     * 请假类型
     */
    @ApiModelProperty(value = "请假类型")
    private String leaveType;

    /**
     * 请假开始时间
     */
    @ApiModelProperty(value = "请假开始时间")
    private Date startDate;

    /**
     * 请假结束时间
     */
    @ApiModelProperty(value = "请假结束时间")
    private Date endDate;

    /**
     * 请假原因
     */
    @ApiModelProperty(value = "请假原因")
    private String leaveReason;

    /**
     * 当前步骤
     */
    @ApiModelProperty(value = "当前步骤")
    private String currentStep;

    /**
     * 任务id
     */
    @ApiModelProperty(value = "任务id")
    private String taskId;

    /**
     * 请假天数
     */
    @ApiModelProperty(value = "请假天数")
    private Integer days;

    /**
     * 申请人ID
     */
    @ApiModelProperty(value = "申请人ID")
    private Long proposerId;

    /**
     * 申请人部门
     */
    @ApiModelProperty(value = "申请人部门")
    private String deptName;

    /**
     * 流程实例ID
     */
    @ApiModelProperty(value = "流程实例ID")
    private String processInstanceId;

    /**
     * 报告开始时间
     */
    @ApiModelProperty(value = "销假开始时间")
    private Date reportStartTime;

    /**
     * 报告结束时间
     */
    @ApiModelProperty(value = "销假结束时间")
    private Date reportEndTime;


}
